﻿using Microsoft.CodeAnalysis;

namespace UIOC.CodeAnalysis.Diagnostics;

internal static class ImplementAttributeMissingObjectInterfaceDiagnostic {

    public const string DiagnosticId = "UIOC0014";

    private const string Title = "'[Implement]' 实现 'UIOC.IObject' 分析";
    private const string MessageFormat = "类型 '{0}' 的所有接口中，未找到接口 'UIOC.IObject'";
    private const string Description = "标记了 '[Implement(INTERFACE_TYPE)]' 的类型必须在其所有接口中存在 'UIOC.IObject'";
    private const string Category = "Usage";

    public static readonly DiagnosticDescriptor Rule = new(
        DiagnosticId,
        Title,
        MessageFormat,
        Category,
        DiagnosticSeverity.Error,
        isEnabledByDefault: true,
        description: Description
    );
}
